// pages/mine/address/address.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    //MODEL数据属性: 地址列表数据，API接口
    modelList: [],

    //PAGE页面属性: 设置列表滚动左边距为0
    pageItemLeft: 0,

    //PAGE页面属性: 操作删除
    pageHandList: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    //初始化数据列表
    this.setData({
      modelList: [{
        id: 0,
        name: '133',
        phone: '158******98',
        tag: '公司',
        address: 'XXXXXXXXXXXX'
      }, {
        id: 1,
        name: '124444',
        phone: '158******98',
        address: 'YYYYYYYYYYYYY'
      }, {
        id: 2,
        name: '张小莫（女士）',
        phone: '158******98',
        tag: '家',
        address: 'ZZZZZZZZZZZZZ'
      }]
    })

    //初始化操作按钮
    this.setData({
      pageHandList: new Array(this.data.modelList.length)
    })
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  /**
   * 滑动删除地址信息
   */
  onDelAddress(evt) {
    let index = evt.currentTarget.dataset.index

    //是否确定删除地址
    if (!this.data.pageHandList[index]) {
      this.data.pageHandList[index] = true
      this.setData({
        pageHandList: this.data.pageHandList
      })
      return
    }
    wx.showLoading()

    //模拟操作交互
    setTimeout(() => {
      wx.hideLoading()

      this.data.modelList.splice(index, 1)
      this.setData({
        modelList: this.data.modelList,
        pageItemLeft: 0
      })
    }, 2000)
  },

  /**
   * 取消删除当前列信息.
   */
  onScrollItem: function (evt) {
    if (Number(evt.detail.scrollLeft) === 0) {
      this.data.pageHandList[evt.currentTarget.dataset.index] = false
      this.setData({
        pageHandList: this.data.pageHandList
      })
    }
  }
})